package stuAdmSys;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Scanner;

public class stuAdmSys {
    public stuAdmSys() {
    }
    //输出主面板
    public void mainInterface(){
        System.out.println("------学生管理系统------");
        System.out.println("1.添加学生信息");
        System.out.println("2.删除学生信息");
        System.out.println("3.修改学生信息");
        System.out.println("4.查看学生信息");
        System.out.println("5.退出系统");
        System.out.println("请输入您的选择:");


    }

    // 检查学号是否重复
    public  boolean examineId(String sid , ArrayList<Student> stuMes){

        boolean isRepetition = true;
        for(int i =0; i<stuMes.size();i++)
        {
            String str = stuMes.get(i).getSno();
            if(str.equals(sid) ){
                isRepetition  = false;
                break;
            }
        }
        return isRepetition;

    }


    //录入学生信息
    public void addStuMes(ArrayList<Student> stuMes){
        Student stu = new Student();
        Scanner sc = new Scanner(System.in);
        int sign=0;
        do{
            System.out.println("请输入学生学号:");
            String sid =sc.nextLine();  //输入（会跳过）
            if(examineId(sid,stuMes)) {
                stu.setSno(sid);

                System.out.println("请输入学生姓名：");
                stu.setName(sc.nextLine());
                System.out.println("请输入学生年龄");
                stu.setAge(sc.nextLine());
                System.out.println("请输入学生地址");
                stu.setAddress(sc.nextLine());
                stuMes.add(stu);
                System.out.println("添加成功！");
                break;
            }else{
                System.out.println("输入学号有重复");
                System.out.println("若重新输入请输入 1 ，若取消输入其他任意内容 ：");
                sign = sc.nextInt();

            }
        }while(sign==1);



    }

    //查看学生信息
    public void findAllStu(ArrayList<Student> stuMes){
        System.out.printf("%-9s","学号"+"\t");
        System.out.printf("%-9s","姓名"+"\t");
        System.out.printf("%-9s","年龄"+"\t");
        System.out.println("地址");


        for(int i = 0 ;  i<stuMes.size();i++)
        {
            System.out.printf("%-9s",stuMes.get(i).getSno()+"\t");
            System.out.printf("%-9s",stuMes.get(i).getName()+"\t");
            System.out.printf("%-9s",stuMes.get(i).getAge()+"\t");
            System.out.println(stuMes.get(i).getAddress());

        }

    }
    //删除学生信息

    public void removeStuMes(ArrayList<Student> stuMes){
        System.out.println("请输入要删除学生的学号：");
        Scanner sc = new Scanner(System.in);
        String sid =sc.nextLine();
        int index=-1;
        for(int i = 0; i<stuMes.size();i++)
        {
            String str = stuMes.get(i).getSno();
            if(str.equals(sid))
            {
                index = i;
            }

        }
        if(index == -1)
        {
            System.out.println("找不到删除对象");
        }
        else{
            stuMes.remove(index);
            System.out.println("删除成功！");
        }




    }
    //修改学生信息
    public  void changeData(ArrayList<Student> stuMes)
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要修改学生的学号：");
        String sId = sc.nextLine();
        int index=-1;
        for(int i = 0; i<stuMes.size();i++)
        {
            String str = stuMes.get(i).getSno();
            if(str.equals(sId))
            {
                index = i;
            }

        }
        if(index==-1)
        {
            System.out.println("找不到该学生");
        }
        else{
            System.out.println("请输入新姓名：");
            stuMes.get(index).setName(sc.nextLine());
            System.out.println("请输入新年龄：");
            stuMes.get(index).setAge(sc.nextLine());
            System.out.println("请输入新地址：");
            stuMes.get(index).setAddress(sc.nextLine());
            System.out.println("修改成功");
        }

        }

        //创建座位表
    public ArrayList create(ArrayList stuList){
        for(int i =0 ; i<5;i++)
        {

            stuList.add(new ArrayList<Student>());
        }


        return stuList;

    }

}
